In a computer system or in a network of computer systems, a common mechanism for communication is electronic mail, e.g., e-mail. E-mail enables a computing system user to communicate data to another computing system user or to a plurality of users. It is noted that nearly anything that is in digital form can be sent from one user to another user via electronic mail.
In a condensed practical example of e-mail, a computer user utilizes an e-mail agent (computer mail program) to compose an e-mail message. The e-mail message contains the e-mail address of one or more recipients. The e-mail agent passes the message to a transport service for delivery to the mailbox of each recipient. Each recipient may or may not use the same e-mail agent as the sender. Once delivered, the recipient utilizes their particular e-mail agent to read the e-mail message.
By virtue of electronic mail being significantly faster and substantially less expensive than regular postal mail, a large percentage of individuals, educational institutions, governments, and businesses, both large and small, have embraced electronic mail as a solution, in part, to their communication needs. In fact, e-mail communication has become a necessary means of communication.
Within many electronic mail programs, when a user deletes an e-mail message, the e-mail message is not really deleted. The deleted e-mail may be sent to a deleted e-mail folder within the email application and from which the user then deletes the deleted email. While in the deleted folder, a deleted e-mail message is typically still locally present and can be recovered. However, once the user deletes the e-mail message from the deleted folder, the e-mail message is usually lost.
While this may be acceptable for those entities having low electronic mail volume or non-critical e-mail, e.g., individual users and small offices, many businesses, companies, educational institutions and government agencies desire to retain their electronic mail. Retaining a history of deleted electronic mail is becoming more and more commonplace for, but is not limited to, tracking intra-office and/or inter-office communication, evidentiary support in litigious proceedings, tracking flow of data associated with the electronic mail, or nearly any other reason for retaining electronic mail.
Currently, in order to recover an e-mail message for a user, some entities utilize recovery logs to store deleted electronic mail. In this instance, when a user wants to recover a deleted e-mail, the entity's administrator needs to be informed of the exact time the e-mail message was deleted by the electronic mail garbage collector process. By knowing the exact time, the administrator would then guess which log the deleted e-mail message was placed, as defined by the DELETE/INSERT operation associated therewith. After guessing the log(s), the administrator would then need to supply the list of log(s) to an email recovery script. This method is error prone and tedious because the wrong log may have been guessed.
If more than one e-mail was deleted and it encompasses more than one log, then the guess work as to which logs the deleted e-mail was placed becomes a non-trivial problem for the administrator. If the administrator chooses more than one log, then guesswork becomes a performance hit by virtue of the time required to mine all those logs. The email recovery script then would mine the logs to recover the complete email data (which may be spread across more than one table). Because of the guesswork involved in determining the logs for e-mail recovery, the whole process becomes a method of trial and error. This can cause a retrieval time approximating twenty minutes or more for a single message recovery. Additionally, the administrator may not be able to selectively recover the deleted electronic mail.
Thus, many current electronic mail and associated e-mail retrieval systems may not provide an efficient mechanism for storing and/or retrieving of deleted electronic mail. Accordingly, there exists a need for an efficient method and system for retrieving deleted electronic mail from recovery logs or similar data repositories.